#include<stdio.h>
#include<stdlib.h>
int main()
{
    struct S
    {
      int n;
      int* s;
    };
    struct S* a=(struct S*)malloc(sizeof(struct S));
    if(a==NULL)
    {
        perror("malloc");
        return 1;
    }
    a->s=(int *)malloc(5*sizeof(int));
    if(a->s==NULL)
    {
        perror("malloc");
    }
    for(int i=0;i<5;i++)
    {
        *((a->s)+i)=i;//a->*(s+i)=i;
        printf("%d ",a->s[i]);
    }
    printf("\n");
    int* r=(int*)realloc(a->s,10*sizeof(int));
    if(r==NULL)
    {
        return 1;
    }
    a->s=r;
    for(int i=0;i<10;i++)
    {
        a->s[i]=i;
        printf("%d ",a->s[i]);
    }
    printf("\n");
    free(a->s);
    a->s=NULL;
    free(a);
    a=NULL;
    return 0;
}